
package com.be.beadmin.project.service;

import com.be.beadmin.common.entity.PageEntity;
import com.be.beadmin.project.dto.input.ChangeDto;
import com.be.beadmin.project.dto.input.ContractDto;
import com.be.beadmin.project.dto.output.ChangeEx;
import org.springframework.data.domain.Page;

import java.util.ArrayList;
import java.util.List;

/**
* @description 服务接口
* @author ljh
* @date 2023-02-05
**/
public interface ChangeService {

    /**
    * 分页的查询接口
    * @param pageEntity
    * @return
    */
    Page<ChangeEx> getChangeByPage(PageEntity pageEntity);

    /**
     * 获取变更类型名称
     * @return
     */
    List<String> getChangeType();

    /**
     * 获取合同名称和编码
     * @return
     */
    List<ContractDto> getContractCodeAndName();

    /**
    * @param changeDto
    */
    void addChange(ChangeDto changeDto);

    /**
    * @param changeDto
    */
    void updateChange(ChangeDto changeDto);

    /**
    * @param id
    */
    void delChange(String id);

    /**
    * 删除多个角色
    * @param ids
    */
    void delChanges (List<String> ids);

    /**
     * 获取变更数量
     * @return
     */
    ArrayList<Integer> getChangeProgress();

}